///******************************************************************************* // * Copyright (c) 2000, 2006 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // *******************************************************************************/ //package org.eclipse.ui.tests.api; // //import org.eclipse.ui.IPageListener; //import org.eclipse.ui.IPageService; //import org.eclipse.ui.IPerspectiveDescriptor; //import org.eclipse.ui.IWorkbenchPage; //import org.eclipse.ui.IWorkbenchWindow; //import org.eclipse.ui.ide.IDE; //import org.eclipse.ui.internal.SlavePageService; //import org.eclipse.ui.tests.harness.util.EmptyPerspective; //import org.eclipse.ui.tests.harness.util.UITestCase; // ///** // * Tests the IPageService class. // */ //public class IPageServiceTest extends UITestCase implements IPageListener, // org.eclipse.ui.IPerspectiveListener { // private IWorkbenchWindow fWindow; // // private boolean pageEventReceived; // // private boolean perspEventReceived; // // public IPageServiceTest(String testName) { // super(testName); // } // // protected void doSetUp() throws Exception { // super.doSetUp(); // fWindow = openTestWindow(); // } // // public void testLocalPageService() throws Throwable { // IWorkbenchPage page = fWindow.openPage(EmptyPerspective.PERSP_ID, // getPageInput()); // // MockViewPart view = (MockViewPart) page.showView(MockViewPart.ID); // // IPageService slaveService = (IPageService) view.getSite().getService( // IPageService.class); // // assertTrue(fWindow != slaveService); // assertTrue(slaveService instanceof SlavePageService); // // perspEventReceived = false; // slaveService.addPerspectiveListener(this); // page.resetPerspective(); // // assertTrue(perspEventReceived); // // // page.hideView(view); // // perspEventReceived = false; // page.resetPerspective(); // // assertFalse(perspEventReceived); // } // // /** // * Tests the addPageListener method. // */ // public void testAddPageListener() throws Throwable { // /* // * Commented out because until test case can be updated to work // * with new window/page/perspective implementation // * // // From Javadoc: "Adds the given listener for page lifecycle events. // // Has no effect if an identical listener is already registered." // // // Add listener. // fWindow.addPageListener(this); // // // Open and close page. // // Verify events are received. // pageEventReceived = false; // IWorkbenchPage page = fWindow.openPage(EmptyPerspective.PERSP_ID, // fWorkspace); // page.close(); // assertTrue(pageEventReceived); // // // Remove listener. // fWindow.removePageListener(this); // */ // } // // /** // * Tests the removePageListener method. // */ // public void testRemovePageListener() throws Throwable { // // From Javadoc: "Removes the given page listener. // // Has no affect if an identical listener is not registered." // // // Add and remove listener. // fWindow.addPageListener(this); // fWindow.removePageListener(this); // // // Open and close page. // // Verify no events are received. // pageEventReceived = false; // IWorkbenchPage page = fWindow.openPage(EmptyPerspective.PERSP_ID, getPageInput()); // page.close(); // assertTrue(!pageEventReceived); // } // // /** // * Tests getActivePage. // */ // public void testGetActivePage() throws Throwable { // /* // * Commented out because until test case can be updated to work // * with new window/page/perspective implementation // * // // From Javadoc: "return the active page, or null if no page // // is currently active" // // // Add page. // IWorkbenchPage page1 = fWindow.openPage(EmptyPerspective.PERSP_ID, // fWorkspace); // assertEquals(fWindow.getActivePage(), page1); // // // Add second page. // IWorkbenchPage page2 = fWindow.openPage(EmptyPerspective.PERSP_ID, // fWorkspace); // assertEquals(fWindow.getActivePage(), page2); // // // Set active page. // fWindow.setActivePage(page1); // assertEquals(fWindow.getActivePage(), page1); // fWindow.setActivePage(page2); // assertEquals(fWindow.getActivePage(), page2); // // // Cleanup. // page1.close(); // page2.close(); // */ // } // // /** // * Tests the addPerspectiveListener method. // */ // public void testAddPerspectiveListener() throws Throwable { // /* // * Commented out because until test case can be updated to work // * with new window/page/perspective implementation // * // // From Javadoc: "Adds the given listener for a page's perspective lifecycle events. // // Has no effect if an identical listener is already registered." // // // Add listener. // fWindow.addPerspectiveListener(this); // // // Open page and change persp feature. // // Verify events are received. // perspEventReceived = false; // IWorkbenchPage page = fWindow.openPage(IWorkbenchConstants.DEFAULT_LAYOUT_ID, // fWorkspace); // page.setEditorAreaVisible(false); // page.setEditorAreaVisible(true); // page.close(); // assertTrue(perspEventReceived); // // // Remove listener. // fWindow.removePerspectiveListener(this); // */ // } // // /** // * Tests the removePerspectiveListener method. // */ // public void testRemovePerspectiveListener() throws Throwable { // // From Javadoc: "Removes the given page's perspective listener. // // Has no affect if an identical listener is not registered." // // // Add and remove listener. // fWindow.addPerspectiveListener(this); // fWindow.removePerspectiveListener(this); // // // Open page and change persp feature. // // Verify no events are received. // perspEventReceived = false; // IWorkbenchPage page = fWindow.openPage(IDE.RESOURCE_PERSPECTIVE_ID, getPageInput()); // page.setEditorAreaVisible(false); // page.setEditorAreaVisible(true); // page.close(); // assertTrue(!perspEventReceived); // } // // /** // * @see IPageListener#pageActivated(IWorkbenchPage) // */ // public void pageActivated(IWorkbenchPage page) { // pageEventReceived = true; // } // // /** // * @see IPageListener#pageClosed(IWorkbenchPage) // */ // public void pageClosed(IWorkbenchPage page) { // pageEventReceived = true; // } // // /** // * @see IPageListener#pageOpened(IWorkbenchPage) // */ // public void pageOpened(IWorkbenchPage page) { // pageEventReceived = true; // } // // /** // * @see IPerspectiveListener#perspectiveActivated(IWorkbenchPage, IPerspectiveDescriptor) // */ // public void perspectiveActivated(IWorkbenchPage page, // IPerspectiveDescriptor perspective) { // perspEventReceived = true; // } // // /** // * @see IPerspectiveListener#perspectiveChanged(IWorkbenchPage, IPerspectiveDescriptor, String) // */ // public void perspectiveChanged(IWorkbenchPage page, // IPerspectiveDescriptor perspective, String changeId) { // perspEventReceived = true; // } // //}